//int pivotIndex(int* nums, int numsSize)
//{
//    int sum = 0;
//    int toal = 0;
//    int i = 0;
//    for (i = 0; i < numsSize; i++)
//    {
//        toal += nums[i];
//    }
//    for (i = 0; i < numsSize; i++)
//    {
//        if (2 * sum + nums[i] == toal)
//            return i;
//        sum += nums[i];
//    }
//    return -1;
//}
#include<iostream>
#include<vector>
using namespace std;
class Solution {
public:
    int pivotIndex(vector<int>& nums) {
        int total = 0;
        for (const auto& num : nums)
            total += num;
        int i = 0;
        int sum = total;
        for (i = 0; i < nums.size(); ++i)
        {
            if (sum * 2 - nums[i] == total)
                return i;
            sum -= nums[i];
        }
        return -1;
    }
};
int main()
{
    vector<int> nums = { 1, 2, 3 };
    cout << Solution().pivotIndex(nums) << endl;
	return 0;
}